class Solution:
def minInsertions(self, s: str) -> int:
a = s
b = s[::-1]
t = []
for i in range(len(a) + 1):
l = []
for j in range(len(b) + 1):
l.append(0)
t.append(l)
for i in range(1, len(a) +1, 1):
for j in range(1, len(b) + 1, 1):
if a[i-1] == b[j-1]:
t[i][j] = 1 + t[i-1][j-1]
else:
t[i][j] = max(t[i-1][j], t[i][j-1])
return len(a) - t[len(a)][len(b)]
1647A - Madoka and Math Dad | 710A - King Moves |
1131A - Sea Battle | 118A - String Task |
236A - Boy or Girl | 271A - Beautiful Year |
520B - Two Buttons | 231A - Team |
479C - Exams | 1030A - In Search of an Easy Problem |
158A - Next Round | 71A - Way Too Long Words |
160A - Twins | 1A - Theatre Square |
1614B - Divan and a New Project | 791A - Bear and Big Brother |
1452A - Robot Program | 344A - Magnets |
96A - Football | 702B - Powers of Two |
1036A - Function Height | 443A - Anton and Letters |
1478B - Nezzar and Lucky Number | 228A - Is your horseshoe on the other hoof |
122A - Lucky Division | 1611C - Polycarp Recovers the Permutation |
432A - Choosing Teams | 758A - Holiday Of Equality |
1650C - Weight of the System of Nested Segments | 1097A - Gennady and a Card Game |